# Q. What is this file?
# A. This file contains options which allow you to configure your multiworld experience while allowing
#    others to play how they want as well.
#
# Q. How do I use it?
# A. The options in this file are weighted. This means the higher number you assign to a value, the
#    more chances you have for that option to be chosen. For example, an option like this:
#
#    map_shuffle:
#      on: 5
#      off: 15
#
#    Means you have 5 chances for map shuffle to occur, and 15 chances for map shuffle to be turned
#    off.
#
# Q. I've never seen a file like this before. What characters am I allowed to use?
# A. This is a .yaml file. You are allowed to use most characters.
#    To test if your yaml is valid or not, you can use this website:
#        http://www.yamllint.com/
#    You can also verify that your Archipelago options are valid at this site:
#        https://archipelago.gg/check

# Your name in-game, limited to 16 characters.
#     {player} will be replaced with the player's slot number.
#     {PLAYER} will be replaced with the player's slot number, if that slot number is greater than 1.
#     {number} will be replaced with the counter value of the name.
#     {NUMBER} will be replaced with the counter value of the name, if the counter value is greater than 1.
name: Player{number}

# Used to describe your yaml. Useful if you have multiple files.
description: Default Pinball FX Template

game: Pinball FX
requires:
  version: 0.6.7 # Version of Archipelago required for this yaml to work as expected.
  game:
    Pinball FX: 1.0.0 # Version of the world required for this yaml to work as expected.

Pinball FX:
  ################
  # Game Options #
  ################
  progression_balancing:
    # A system that can move progression earlier, to try and prevent the player from getting stuck and bored early.
    # 
    # A lower setting means more getting stuck. A higher setting means less getting stuck.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 99
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-99: 0 # random value between 0 and 99
    disabled: 0 # equivalent to 0
    normal: 50 # equivalent to 50
    extreme: 0 # equivalent to 99

  accessibility:
    # Set rules for reachability of your items/locations.
    # 
    # **Full:** ensure everything can be reached and acquired.
    # 
    # **Minimal:** ensure what is needed to reach your goal can be acquired.
    full: 50
    minimal: 0

  ################
  # Goal Options #
  ################
  goal:
    # Determines the victory condition.
    # 
    # Shiny Quarters + Final Table: Collect enough Shiny Quarters to unlock a Final Table and get a classic mode high score on it.
    # Shiny Quarter Hunt: Collect a set number of Shiny Quarters spread across the multiworld.
    shiny_quarters_final_table: 50
    shiny_quarter_hunt: 0

  shiny_quarters_total:
    # Determines how many Shiny Quarters are in the item pool.
    # 
    # This number will not be allowed to go over 2 * (number of pinball tables) and will be clamped accordingly if so.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 1
    # Maximum value is 100
    20: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-1-100: 0 # random value between 1 and 100

  shiny_quarters_required:
    # Determines how many Shiny Quarters are required to either win or unlock the final table.
    # 
    # If this number is higher than the total number of Shiny Quarters, it will be set to that number instead.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 1
    # Maximum value is 100
    15: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-1-100: 0 # random value between 1 and 100

  #########################
  # Pinball Table Options #
  #########################
  pinball_table_selection:
    # Determines which Pinball Tables can be considered for inclusion in the multiworld.
    # 
    # Set any table you don't own (or don't want to play) for Pinball FX to false.
    # 
    # A minimum of 6 Pinball Tables must be selected to play this implementation.
    '[A Charlie Brown Christmas Pinball DLC] A Charlie Brown Christmas Pinball': true
    '[Borderlands: Vault Hunter Pinball DLC] Borderlands: Vault Hunter Pinball': true
    '[Brothers in Arms: Win the War Pinball DLC] Brothers in Arms: Win the War Pinball': true
    '[Carnivals and Legends DLC] Adventure Land': true
    '[Carnivals and Legends DLC] Son of Zeus': true
    '[CastleStorm DLC] CastleStorm': true
    '[Charity Pack DLC] Epic Quest': true
    '[Charity Pack DLC] Excalibur': true
    '[Core Collection DLC] Biolab': true
    '[Core Collection DLC] Pasha': true
    '[Core Collection DLC] Rome': true
    '[Core Collection DLC] Secrets of the Deep': true
    '[Crypt of the NecroDancer Pinball DLC] Crypt of the NecroDancer Pinball': true
    '[DreamWorks Pinball DLC] DreamWorks How to Train Your Dragon Pinball': true
    '[DreamWorks Pinball DLC] DreamWorks Kung Fu Panda Pinball': true
    '[DreamWorks Pinball DLC] DreamWorks Trolls Pinball': true
    '[Free Tables] Fish Tales': true
    '[Free Tables] Sorcerer''s Lair': true
    '[Free Tables] Wild West Rampage': true
    '[Game Night Pinball Volume 1 DLC] Exploding Kittens: A Pinball Cat-astrophe': true
    '[Game Night Pinball Volume 1 DLC] Gloomhaven Pinball': true
    '[Game Night Pinball Volume 1 DLC] Terraforming Mars Pinball': true
    '[Garfield Pinball DLC] Garfield Pinball': true
    '[Goat Simulator Pinball DLC] Goat Simulator Pinball': true
    '[Godzilla vs. Kong Pinball Pack DLC] Godzilla Pinball': true
    '[Godzilla vs. Kong Pinball Pack DLC] Godzilla vs. Kong Pinball': true
    '[Godzilla vs. Kong Pinball Pack DLC] Kong Pinball': true
    '[Grimm Tales DLC] Grimm Tales': true
    '[Homeworld: Journey to Hiigara Pinball DLC] Homeworld: Journey to Hiigara Pinball': true
    '[Honor and Legacy Pack DLC] A Samurai''s Vengeance': true
    '[Honor and Legacy Pack DLC] Vernes'' Mysterious Island': true
    '[Indiana Jones: The Pinball Adventure DLC] Indiana Jones: The Pinball Adventure': true
    '[Jurassic World Pinball DLC] Jurassic Park Pinball': true
    '[Jurassic World Pinball DLC] Jurassic Park Pinball Mayhem': true
    '[Jurassic World Pinball DLC] Jurassic World Pinball': true
    '[MY LITTLE PONY Pinball DLC] MY LITTLE PONY Pinball': true
    '[Marvel Pinball: Avengers Chronicles DLC] Fear Itself': true
    '[Marvel Pinball: Avengers Chronicles DLC] Marvel''s The Avengers': true
    '[Marvel Pinball: Avengers Chronicles DLC] The Infinity Gauntlet': true
    '[Marvel Pinball: Avengers Chronicles DLC] World War Hulk': true
    '[Marvel Pinball: Cinematic Pack DLC] Guardians of the Galaxy': true
    '[Marvel Pinball: Cinematic Pack DLC] Marvel''s Ant-Man': true
    '[Marvel Pinball: Cinematic Pack DLC] Marvel''s Avengers: Age of Ultron': true
    '[Marvel Pinball: Heavy Hitters DLC] Civil War': true
    '[Marvel Pinball: Heavy Hitters DLC] Deadpool': true
    '[Marvel Pinball: Heavy Hitters DLC] Venom': true
    '[Marvel Pinball: Marvel Legends Pack DLC] Captain America': true
    '[Marvel Pinball: Marvel Legends Pack DLC] Doctor Strange': true
    '[Marvel Pinball: Marvel Legends Pack DLC] Fantastic Four': true
    '[Marvel Pinball: Original Pack DLC] Blade': true
    '[Marvel Pinball: Original Pack DLC] Iron Man': true
    '[Marvel Pinball: Original Pack DLC] Spider-Man': true
    '[Marvel Pinball: Original Pack DLC] Wolverine': true
    '[Marvel Pinball: Vengeance and Virtue DLC] Ghost Rider': true
    '[Marvel Pinball: Vengeance and Virtue DLC] Moon Knight': true
    '[Marvel Pinball: Vengeance and Virtue DLC] Thor': true
    '[Marvel Pinball: Vengeance and Virtue DLC] X-Men': true
    '[Marvel''s Women of Power DLC] Marvel''s Women of Power: A-Force': true
    '[Marvel''s Women of Power DLC] Marvel''s Women of Power: Champions': true
    '[Pacific Rim Pinball DLC] Pacific Rim Pinball': true
    '[Peanuts'' Snoopy Pinball DLC] Peanuts'' Snoopy Pinball': true
    '[Secrets & Shadows Pack DLC] Curse of the Mummy': true
    '[Secrets & Shadows Pack DLC] Pinball Noir': true
    '[Secrets & Shadows Pack DLC] Sky Pirates: Treasures of the Clouds': true
    '[South Park Pinball DLC] South Park: Butters'' Very Own Pinball Game': true
    '[South Park Pinball DLC] South Park: Super-Sweet Pinball': true
    '[Star Trek Pinball DLC] Star Trek Pinball: Deep Space Nine': true
    '[Star Trek Pinball DLC] Star Trek Pinball: Discovery': true
    '[Star Trek Pinball DLC] Star Trek Pinball: Kelvin Timeline': true
    '[Star Wars Pinball DLC] Star Wars Pinball: Boba Fett': true
    '[Star Wars Pinball DLC] Star Wars Pinball: Episode V The Empire Strikes Back': true
    '[Star Wars Pinball DLC] Star Wars Pinball: The Clone Wars': true
    '[Star Wars Pinball: Balance of the Force DLC] Star Wars Pinball: Darth Vader': true
    '[Star Wars Pinball: Balance of the Force DLC] Star Wars Pinball: Episode VI Return of the Jedi': true
    '[Star Wars Pinball: Balance of the Force DLC] Star Wars Pinball: Starfighter Assault': true
    '[Star Wars Pinball: Heroes Within DLC] Star Wars Pinball: Droids': true
    '[Star Wars Pinball: Heroes Within DLC] Star Wars Pinball: Episode IV A New Hope': true
    '[Star Wars Pinball: Heroes Within DLC] Star Wars Pinball: Han Solo': true
    '[Star Wars Pinball: Heroes Within DLC] Star Wars Pinball: Masters of the Force': true
    '[Star Wars Pinball: Solo Pack DLC] Star Wars Pinball: Battle of Mimban': true
    '[Star Wars Pinball: Solo Pack DLC] Star Wars Pinball: Calrisian Chronicles': true
    '[Star Wars Pinball: Solo Pack DLC] Star Wars Pinball: Solo': true
    '[Star Wars Pinball: The Force Awakens Pack DLC] Star Wars Pinball: Might of the First Order': true
    '[Star Wars Pinball: The Force Awakens Pack DLC] Star Wars Pinball: The Force Awakens': true
    '[Star Wars Pinball: The Last Jedi DLC] Star Wars Pinball: Ahch-To Island': true
    '[Star Wars Pinball: The Last Jedi DLC] Star Wars Pinball: The Last Jedi': true
    '[Star Wars Pinball: Thrill of the Hunt DLC] Star Wars Pinball: Classic Collectibles': true
    '[Star Wars Pinball: Thrill of the Hunt DLC] Star Wars Pinball: The Mandalorian': true
    '[Star Wars Pinball: Unsung Heroes DLC] Star Wars Pinball: Rogue One': true
    '[Star Wars Pinball: Unsung Heroes DLC] Star Wars Pinball: Star Wars Rebels': true
    '[Super League Football DLC] Super League Football': true
    '[The Machine: Bride of Pin-Bot DLC] The Machine: Bride of Pin-Bot': true
    '[The Princess Bride Pinball DLC] The Princess Bride Pinball': true
    '[Tomb Raider Pinball DLC] Tomb Raider Pinball: Adventures of Lara Croft': true
    '[Tomb Raider Pinball DLC] Tomb Raider Pinball: Secrets of Croft Manor': true
    '[Universal Classics Pinball DLC] Back to the Future Pinball': true
    '[Universal Classics Pinball DLC] E.T. Pinball': true
    '[Universal Classics Pinball DLC] Jaws Pinball': true
    '[Universal Pinball: TV Classics DLC] Battlestar Galactica Pinball': true
    '[Universal Pinball: TV Classics DLC] Knight Rider Pinball': true
    '[Universal Pinball: TV Classics DLC] Xena: Warrior Princess Pinball': true
    '[Williams Pinball Volume 1 DLC] Junk Yard': true
    '[Williams Pinball Volume 1 DLC] Medieval Madness': true
    '[Williams Pinball Volume 1 DLC] The Getaway: High Speed II': true
    '[Williams Pinball Volume 10 DLC] Comet': true
    '[Williams Pinball Volume 10 DLC] Diner': true
    '[Williams Pinball Volume 10 DLC] Fire!': true
    '[Williams Pinball Volume 2 DLC] Attack from Mars': true
    '[Williams Pinball Volume 2 DLC] Black Rose': true
    '[Williams Pinball Volume 2 DLC] The Party Zone': true
    '[Williams Pinball Volume 3 DLC] Champion Pub': true
    '[Williams Pinball Volume 3 DLC] Safe Cracker': true
    '[Williams Pinball Volume 3 DLC] Theatre of Magic': true
    '[Williams Pinball Volume 4 DLC] Hurricane': true
    '[Williams Pinball Volume 4 DLC] Red and Ted''s Road Show': true
    '[Williams Pinball Volume 4 DLC] White Water': true
    '[Williams Pinball Volume 5 DLC] Cirqus Voltaire': true
    '[Williams Pinball Volume 5 DLC] No Good Gofers': true
    '[Williams Pinball Volume 5 DLC] Tales of the Arabian Nights': true
    '[Williams Pinball Volume 6 DLC] Dr. Dude and his Excellent Ray': true
    '[Williams Pinball Volume 6 DLC] FunHouse': true
    '[Williams Pinball Volume 6 DLC] Space Station': true
    '[Williams Pinball Volume 8 DLC] Banzai Run': true
    '[Williams Pinball Volume 8 DLC] Black Knight 2000': true
    '[Williams Pinball Volume 8 DLC] Earthshaker!': true
    '[Williams Pinball Volume 9 DLC] PIN-BOT': true
    '[Williams Pinball Volume 9 DLC] TAXI': true
    '[Williams Pinball Volume 9 DLC] WHO dunnit': true
    '[Williams Pinball: Elvira and the Party Monsters DLC] Elvira and the Party Monsters': true
    '[Williams Pinball: Scared Stiff DLC] Scared Stiff': true
    '[Williams Pinball: Star Trek: The Next Generation DLC] Star Trek: The Next Generation': true
    '[Williams Pinball: Swords of Fury DLC] Swords of Fury': true
    '[Williams Pinball: The Addams Family DLC] The Addams Family': true
    '[Williams Pinball: Twilight Zone DLC] Twilight Zone': true
    '[Williams Pinball: Universal Monsters Pack DLC] Monster Bash': true
    '[Williams Pinball: Universal Monsters Pack DLC] The Creature From The Black Lagoon': true
    '[Williams Pinball: Whirlwind DLC] Williams Pinball: Whirlwind': true
    '[Williams Pinball: World Cup Soccer DLC] World Cup Soccer': true
    '[World War Z Pinball DLC] World War Z Pinball': true
    '[Wrath of the Elder Gods DLC] Wrath of the Elder Gods': true

  pinball_table_count:
    # Determines how many Pinball Tables will be picked from your table selection for inclusion in the multiworld.
    # 
    # If this number is higher than the size of your Pinball Table selection, it will be set to that number instead.
    # 
    # Note: Setting this value below 10 could extremely rarely lead to generation failures when paired with other
    #       restrictive options.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 6
    # Maximum value is 140
    10: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-6-140: 0 # random value between 6 and 140

  ####################
  # Location Options #
  ####################
  include_very_high_tier_scores:
    # If enabled, locations for Very High-Tier Target Scores will be created when generating the multiworld.
    # 
    # Enabling this option will add more locations, but will also place additional player skill expectations on you.
    'false': 50
    'true': 0

  include_one_ball_challenges:
    # If enabled, locations for 1 Ball Challenges will be created when generating the multiworld.
    # By default, only Classic Mode and Time Challenge locations are included when generating.
    # 
    # Items to unlock the 1 Ball Challenge for each table will be added to the item pool.
    'false': 50
    'true': 0

  include_flips_challenges:
    # If enabled, locations for Flips Challenges will be created when generating the multiworld.
    # By default, only Classic Mode and Time Challenge locations are included when generating.
    # 
    # Items to unlock the Flips Challenge for each table will be added to the item pool.
    'false': 50
    'true': 0

  include_distance_challenges:
    # If enabled, locations for Distance Challenges will be created when generating the multiworld.
    # By default, only Classic Mode and Time Challenge locations are included when generating.
    # 
    # Items to unlock the Distance Challenge for each table will be added to the item pool.
    'false': 50
    'true': 0

  ########################
  # Target Score Options #
  ########################
  target_score_requirement_mode:
    # Determines how Target Score requirements are set.
    # 
    # Same for All Tables: A single percentage will be applied to the Target Scores of all tables
    # Random per Table: Each table will have a random percentage applied to its Target Scores
    same_for_all_tables: 50
    random_per_table: 0

  target_score_requirement_percentage:
    # Determines the percentage to apply Target Scores. You will not unlock location checks until
    # you reach or exceed the Target Scores on a given table.
    # 
    # When the requirement mode is set to random per table, the specified percentage will act as the maximum possible.
    # 
    # The Pinball FX Archipelago client will display the expected scores for each table under the Pinball FX tab.
    # 
    # WARNING: Values over 100 are intended for players experienced with scoring high on various pinball tables.
    #          More casual players may never be able to reach the resulting Target Scores. Be advised.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 50
    # Maximum value is 400
    100: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-50-400: 0 # random value between 50 and 400

  #######################
  # Useful Item Options #
  #######################
  useful_item_percentage:
    # Determines what percentage of filler items will get converted to useful items.
    # 
    # Useful items are (per mode / challenge type): Target Score Discount, Target Score Multiplier
    # 
    # These will make the game slightly easier, but are also table-specific for balance purposes.
    # 
    # The Pinball FX Archipelago client will display the useful items assigned to each table under the Pinball FX tab.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    50: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  ################
  # Trap Options #
  ################
  trap_percentage:
    # Determines what percentage of filler items will get converted to trap items.
    # 
    # Trap Items are made up of the following types:
    # - Post-Processing Effects (Black and White, Bloom, Chromatic, Color Inversion, Grainy, Tunnel Vision)
    # 
    # This percentage is applied to the remaining filler items AFTER the useful item conversion has taken place.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    0: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  trap_weights:
    # Determines the relative weights of each Trap Type if Trap Percentage is greater than 0.
    # 
    # Each weight is required to be zero or more.
    Black and White Trap: 1
    Bloom Trap: 1
    Chromatic Trap: 1
    Color Inversion Trap: 1
    Grainy Trap: 1
    Tunnel Vision Trap: 1

  trap_duration:
    # Determines how long each trap will last (in seconds).
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 20
    # Maximum value is 300
    30: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-20-300: 0 # random value between 20 and 300

  ###########################
  # Item & Location Options #
  ###########################
  local_items:
    # Forces these items to be in their native world.
    []

  non_local_items:
    # Forces these items to be outside their native world.
    []

  start_inventory:
    # Start with the specified amount of these items. Example: "Bomb: 1"
    {}

  start_inventory_from_pool:
    # Start with the specified amount of these items and don't place them in the world. Example: "Bomb: 1"
    # 
    # The game decides what the replacement items will be.
    {}

  start_hints:
    # Start with these item's locations prefilled into the ``!hint`` command.
    []

  start_location_hints:
    # Start with these locations and their item prefilled into the ``!hint`` command.
    []

  exclude_locations:
    # Prevent these locations from having an important item.
    []

  priority_locations:
    # Prevent these locations from having an unimportant item.
    []

  item_links:
    # Share part of your item pool with other players.
    []

  plando_items:
    # Generic items plando.
    []
